Globals may be used in the conditional clauses, in the "then" section, or in the "else" section of rules. However, globals will never alter the search strategy of the inference engine. When the inference engine encounters a global, it will use that globals value as is. If no value has been assigned to the global, the inference engine will assume its value to be null ("").
In the conditional part of rules, globals will be evaluated just as facts are. They can cause a rule to prove true or false depending on how they are used in clauses. If the system is forward chaining, it will not examine rules using a global that has just be set the way that it does for facts. Likewise, when backward chaining, the system will not attempt to "assert" a global that has not been set the way that it would for a fact that was not asserted.
In the "then" or "else" parts of rules, globals may be used as the source or as the target for assignments. As mentioned above, setting a global or needing a value from a global that has not been set will not alter the search strategy.